<?php

/*
 * Category: Thời sự
 * Author: Lê Đặng Khánh Duy
 */
include_once LIBRARIES_TOOLS_XTEMPLATE;
include_once LIBRARIES_ENTITIES_DATABASE;
include_once LIBRARIES_ENTITIES_ARTICLES;
include_once LIBRARIES_TOOLS_UTILITY;

class CategoryController {

    public function invoke() {


        $rows = $this->GetArticleListByCategoryID(179);

        // tổng số tin 
        $amountOfNews = count($rows);


        if (count($rows) > 0) {

            $dir = dirname(__FILE__);

            // đường dẫn file view
            $xtemplate = new XTemplate($dir . '/views/category.html');


           
            $amountToView = 6;

            // nếu số lượng tin lấy được nhỏ hơn số lượng hiển thị
            // thì gán số lượng hiển thị bằng tổng số lấy được
            if ($amountOfNews < $amountToView) {
                $amountToView = $amountOfNews;
            }

            $first = 1;

            for ($i = 0; $i < $amountToView; $i++) {
                if ($rows[$i]->getStatus() == 1) {
                    if ($first == 1) {
                        $xtemplate->assign("CATEGORY_ALIAS", $rows[$i]->getCategory()->getAlias());
                        $xtemplate->assign("CATEGORY_ID", $rows[$i]->getCategory()->getID());
                        $xtemplate->assign("CATEGORY_NAME", $rows[$i]->getCategory()->getTitle());

                        $xtemplate->assign('FIRST_ARTICLE_ID', $rows[$i]->getID());
                        $xtemplate->assign('FIRST_ARTICLE_IMAGE', $rows[$i]->getImage());
                        $xtemplate->assign('FIRST_ARTICLE_ALIAS', $rows[$i]->getAlias());
                        $xtemplate->assign('FIRST_ARTICLE_TITLE', $rows[$i]->getTitle());
                        $xtemplate->assign('FIRST_ARTICLE_DESCRIPTION', $rows[$i]->getDescription());
                        $xtemplate->assign('FIRST_ARTICLE_DATE', Utility::formatDateTimeToView($rows[$i]->getModifiedDate()));
                        $xtemplate->parse("main.first_article");
                    } else {
                        $xtemplate->assign('ARTICLE_ID', $rows[$i]->getID());
                        $xtemplate->assign('ARTICLE_IMAGE', $rows[$i]->getImage());
                        $xtemplate->assign('ARTICLE_ALIAS', $rows[$i]->getAlias());
                        $xtemplate->assign('ARTICLE_TITLE', $rows[$i]->getTitle());
                        $xtemplate->assign('ARTICLE_DESCRIPTION', $rows[$i]->getDescription());
                        $xtemplate->assign('ARTICLE_DATE', Utility::formatDateTimeToView($rows[$i]->getModifiedDate()));
                        $xtemplate->parse("main.article");
                    }
                    $first ++;
                }
            }

            $xtemplate->parse("main");
            $xtemplate->out("main");
        }
    }

    // tải danh sách ảnh theo mã gallery
    private function GetArticleListByCategoryID($categoryID) {
        $db = new Database();
        try {
            $article = new Articles();
            $article->setCategoryID($categoryID);
            $rows = $article->getListByCategoryID($db);
            $db->submitChanges();
            return $rows;
        } catch (PDOException $exc) {
            echo $exc->getMessage();
            $db->rollback();
            exit();
        }
    }

}

?>
